Computing systems such as personal computers, laptop computers, tablet computers, cellular phones, among many other types of computing systems, are increasingly prevalent in numerous aspects of modern life. As computers become progressively more integrated with users' everyday life, the convenience, efficiency, and intuitiveness of the user-interfaces by which users interact with computing devices becomes progressively more important.
A user-interface may include various combinations of hardware and software which enable the user to, among other things, interact with a computing system. One example of a modern user-interface is a “voice-user-interface” (VUI) (e.g., “voice control”), which may allow a user to provide speech data to the computing system in order to recognize verbal inputs. The data may be received, translated into text, and processed by a speech recognition system, and may ultimately be used by the computing system as a basis for executing certain computing functions. Speech recognition systems use syntax- and semantics-based mechanisms such as word patterns and grammars to recognize or otherwise predict the meaning of a verbal input (e.g., what patterns of words to expect a human to say) and, in some cases, to formulate a response to the verbal input, that may take a form of one or more computing functions.
As speech recognition systems have become more reliable, it is becoming more prevalent to integrate VUIs with applications developed for computing systems such as mobile devices. However, it can be difficult for application developers wanting to provide speech recognition services to their users to create and maintain an effective speech recognition system without consuming excessive resources and requiring sufficient experience with speech technologies.